package cn.jeefast.rest.dao;

import cn.jeefast.common.entity.MbPatient;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * <p>
  *  Mapper 接口
 * </p>
 *
 * @author theodo
 * @since 2019-12-30
 */
public interface MbPatientDao extends BaseMapper<MbPatient> {

    /**
     * 添加患者（自定义方法）
     * @param patient
     */
    void insertPatient(MbPatient patient);

    /**
     * 根据医生ID获取医生负责的病人
     * @param docId
     * @return
     */
    List<Map> docCharge(@Param("docId") Long docId, @Param("page") Integer page, @Param("limit") Integer limit,@Param("keyword")String keyword,@Param("resId") Long[] resId,@Param("stepId") Long[] stepId,@Param("dig") String[] dig);
    List<Map> docChargeCount(@Param("docId") Long docId,@Param("keyword")String keyword,@Param("resId") Long[] resId,@Param("stepId") Long[] stepId,@Param("dig") String[] dig);

    /**
     * 根据ID获取用户研究组
     * @param list
     * @return
     */
    List<MbPatient> selectPatientByIds(@Param("list")Long[] list);

    /**
     * 查询Top10研究阶段
     * @return
     */
    List<Map> diagnosisList();

    /**
     * 根据患者ID查询患者的研究阶段ID（多患者）
     * @return
     */
    List<Long> selectResIdByPatId(@Param("ids") Long[] ids);
}